package com.bskj.bms.service;

import java.util.List;
import java.util.Map;

import com.bskj.bms.bean.req.BasePageListReqVo;
import com.bskj.bms.bean.req.BillListReqVo;
import com.bskj.bms.bean.vo.ShopCouponVo;
import com.bskj.bms.bean.vo.UserCouponReleaseRespVo;
import com.bskj.common.bean.model.BmsUser;
import com.bskj.common.bean.model.ShopCoupon;
import com.bskj.common.dao.core.Page;
import com.bskj.common.service.IBaseService;

public interface IBmsCouponService extends IBaseService<ShopCoupon>{
	/**
	 * 查询每个停车的停车劵
	 * @param custId
	 * @param req
	 * @return
	 * @throws Exception
	 */
	public Page<ShopCouponVo> findAllCoupon(Integer custId,BasePageListReqVo req)throws Exception;
	
	/**
	 * 新增停车劵
	 * @param req
	 */
	public void addCoupon(ShopCouponVo req,Integer custId)throws Exception;
	
	
	public Page<UserCouponReleaseRespVo> shopsCoupon(BillListReqVo req,Integer custId)throws Exception;
	
	List<UserCouponReleaseRespVo> shopCoupon(BillListReqVo req,Integer shopId)throws Exception;
	
	/**
	 * 修改停车券发放限制规则，并记录日志
	 * 
	 * @param shopCoupon 停车券发放限制规则
	 * @param bmsUser 操作员
	 * @return
	 * @throws Exception
	 */
	Map<String, Object> setShopCouponLimit(ShopCoupon shopCoupon, BmsUser bmsUser) throws Exception;
}
